package com.milepost.workflow.flowinsttask.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.milepost.workflow.common.dto.BootstrapTableVoDto;
import com.milepost.workflow.flowinsttask.dto.ApproveTaskDto;
import com.milepost.workflow.flowinsttask.dto.ApprovedTaskDto;
import com.milepost.workflow.flowinsttask.entity.FlowInstTaskEntity;
import com.milepost.workflow.flowinsttask.vo.ApproveTaskVo;
import com.milepost.workflow.flowinsttask.vo.ApprovedTaskVo;
import com.milepost.workflow.flowinsttaskapp.entity.FlowInstTaskAppEntity;

/**
 * @author huarf
 * @Description
 * @create 2022-03-28 23:43
 */
public interface FlowInstTaskService extends IService<FlowInstTaskEntity> {

    /**
     * 查询待办任务列表
     * @param bootstrapTableVoDto
     * @param approveTaskDto
     * @return
     */
    Page<ApproveTaskVo> getApproveTaskList(BootstrapTableVoDto bootstrapTableVoDto, ApproveTaskDto approveTaskDto);

    /**
     * 办理任务
     * @param flowInstTaskAppEntity
     * @return
     */
    Boolean approveTask(FlowInstTaskAppEntity flowInstTaskAppEntity);

    /**
     * 查询已办任务列表
     * @param bootstrapTableVoDto
     * @param approvedTaskDto
     * @return
     */
    Page<ApprovedTaskVo> getApprovedTaskList(BootstrapTableVoDto bootstrapTableVoDto, ApprovedTaskDto approvedTaskDto);

}
